//好像没有意义,因为在app.js中得  *.bll 当中就把这部分做了
//使用json的方式来传递参数和获取数据
var request = require('request');

var myReq = module.exports = {};



//使用 GET 方式获取url的内容
myReq.get = function(reqUrl, reqData, fn) {
    myReq.req('GET', reqUrl, reqData, fn);
}

//使用 POST 方式获取url的内容
myReq.post = function(reqUrl, reqData, fn) {
    myReq.req('POST', reqUrl, reqData, fn);
}

//使用 DELETE 方式获取url的内容
myReq.del = function(reqUrl, reqData, fn) {
    myReq.req('DELETE', reqUrl, reqData, fn);
}

//使用 PUT 方式获取url的内容
myReq.put = function(reqUrl, reqData, fn) {
    myReq.req('PUT', reqUrl, reqData, fn);
}

//使用 自定义的 方式获取url的内容
myReq.req = function(type, reqUrl, reqData, fn) {
    jsonReq(type, reqUrl, reqData, fn);
}


/*
使用json方式来获取远端数据,参数请参考 myHttp
如果上传的是json，会转换为字符来传递
会把返回的数据转换为json返回
*/
var jsonReq = function(type, reqUrl, reqData, fn) {
    request({
        method: type,
        url: reqUrl,
        form: reqData
    }, function(err, resp, body) {
        if (err) {
            fn(false, err);
        } else {
            try {
                var d = JSON.parse(body);
                fn(d.ok,d.data);
            } catch (ex) {
                fn(true, body);
            }
        }
    })

}